#!/bin/bash

# ContentProvider 测试脚本
# 用于测试图片分享应用的ContentProvider功能

echo "=== ContentProvider 测试脚本 ==="
echo ""

# 检查主应用是否已安装
echo "1. 检查主应用是否已安装..."
MAIN_APP_INSTALLED=$(adb shell pm list packages | grep "com.example.tupiancs34")
if [ -n "$MAIN_APP_INSTALLED" ]; then
    echo "✅ 主应用已安装: com.example.tupiancs34"
else
    echo "❌ 主应用未安装，请先安装主应用"
    echo "   运行命令: cd app && ./gradlew installDebug"
    exit 1
fi

echo ""

# 检查测试应用是否已安装
echo "2. 检查测试应用是否已安装..."
TEST_APP_INSTALLED=$(adb shell pm list packages | grep "com.test.contentprovider")
if [ -n "$TEST_APP_INSTALLED" ]; then
    echo "✅ 测试应用已安装: com.test.contentprovider"
else
    echo "❌ 测试应用未安装，请先安装测试应用"
    echo "   运行命令: cd 测试应用 && ./gradlew installDebug"
    exit 1
fi

echo ""

# 启动主应用
echo "3. 启动主应用..."
adb shell am start -n com.example.tupiancs34/.MainActivity
echo "✅ 主应用已启动"

echo ""

# 等待主应用完全启动
echo "4. 等待主应用完全启动..."
sleep 3

# 启动测试应用
echo "5. 启动测试应用..."
adb shell am start -n com.test.contentprovider/.TestContentProviderAccess
echo "✅ 测试应用已启动"

echo ""

# 查看日志
echo "6. 查看ContentProvider相关日志..."
echo "   请查看以下日志标签:"
echo "   - ImageContentProvider"
echo "   - TestContentProvider"
echo ""
echo "   运行以下命令查看实时日志:"
echo "   adb logcat -s ImageContentProvider TestContentProvider"

echo ""

# 提供测试步骤
echo "7. 测试步骤:"
echo "   1. 在测试应用中点击 '测试访问ContentProvider' 按钮"
echo "   2. 查看状态文本是否显示成功信息"
echo "   3. 点击 '列出所有图片' 按钮查看图片列表"
echo "   4. 点击 '加载第一张图片' 按钮测试图片加载"
echo "   5. 检查图片是否正常显示在ImageView中"

echo ""

# 提供故障排除信息
echo "8. 故障排除:"
echo "   如果测试失败，请检查:"
echo "   - 主应用是否正常运行"
echo "   - ContentProvider是否在AndroidManifest.xml中正确注册"
echo "   - assets/images目录是否包含图片文件"
echo "   - 权限设置是否正确"
echo "   - 查看logcat日志获取详细错误信息"

echo ""
echo "=== 测试脚本执行完成 ==="
